// function fetch(method, url, data) {
//     const p = new Promise((res, rej) => {
//         var xhr = new XMLHttpRequest();
//         xhr.open(method, url, true);
//         xhr.onreadystatechange = function() {
//             if (xhr.readyState == 4) {
//                 if (xhr.status == 200) {
//                     res(JSON.parse(xhr.responseText))
//                 } else {
//                     rej(
//                         new Error('cuowu')
//                     )
//                 }
//             }
//         }
//         xhr.send(data)
//     })
//     return p
// }
// fetch('GET', './data/test.json', null).then((text) => {
//         console.log(text);
//     })



function ajax(url, method, data) {
    const p = new Promise((res, rej) => {
        const xhr = new XMLHttpRequest();
        xhr.open(method, url, true);
        xhr.onreadystatechange = function() {
            if (xhr.readyState == 4) {
                if (xhr.status == 200) {
                    res(
                        JSON.parse(xhr.responseText)
                    )
                } else if (xhr.status === 404 || xhr.status === 500) {
                    rej(
                        new Errow('404 not found')
                    )
                }
            }
        }
        xhr.send(data);
    })
    return p;
}

const url = './data/test.json'
ajax(url, 'GET')
    .then(res => console.log(res))
    .catch(err => console.error(err))

// function ajax(url, method, data) {
//     const p = new Promise((resolve, reject) => {
//         const xhr = new XMLHttpRequest()
//         xhr.open(method, url, true)
//         xhr.onreadystatechange = function() {
//             if (xhr.readyState === 4) {
//                 if (xhr.status === 200) {
//                     resolve(
//                         JSON.parse(xhr.responseText)
//                     )
//                 } else if (xhr.status === 404 || xhr.status === 500) {
//                     reject(new Error('404 not found'))
//                 }
//             }
//         }
//         xhr.send(data)
//     })
//     return p
// }